home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Environments / Small Eiffel 0.4.8 / lib_std / std_input.e < prev    next >
Text File  |  1997-04-13  |  1KB  |  54 lines

  1. -- Part of SmallEiffel -- Read DISCLAIMER file -- Copyright (C) 
  2. -- Dominique COLNET and Suzanne COLLIN -- colnet@loria.fr
  3. --
  4. class STD_INPUT
  5. --
  6. -- To use the standard input file. As for UNIX, the default standard 
  7. -- input is the keyboard.
  8. --
  9. -- Notes : - the predefined `std_input' should be use to have only 
  10. --         one instance of the class STD_INPUT. 
  11. --         - to do reading or writing at the same time on the screen, 
  12. --         see STD_INPUT_OUTPUT,
  13. --         - to handle cursor of the screen, see CURSES.
  14. --
  15.    
  16. inherit 
  17.    STD_FILE_READ 
  18.       redefine make, disconnect, read_character
  19.       end;
  20.    
  21. creation {ANY}
  22.    make, connect_to
  23.  
  24. feature {ANY}
  25.    
  26.    make is
  27.       do
  28.      input_stream := stdin;
  29.       end;
  30.    
  31.    disconnect is      
  32.       local
  33.      err: INTEGER;
  34.       do
  35.      err := fclose(input_stream); 
  36.      path := Void;
  37.      input_stream := stdin;
  38.       end;
  39.       
  40.    read_character is
  41.       do
  42.      std_output.flush;
  43.      last_character_memory := fgetc(input_stream);
  44.       end;
  45.  
  46. feature {RUN_FEATURE} 
  47.    
  48.    stdin: POINTER is
  49.       external "CSE"
  50.       end;
  51.  
  52. end -- STD_INPUT
  53.  
  54.